#pragma once

#include "AriesMath.h"

#include <vector>

namespace Core
{
	class ExtentRectangle
	{
	public:
		ExtentRectangle(double west, double south, double east, double north);
		ExtentRectangle();

		~ExtentRectangle(){}

		double North() const { return _north; }
		void North(double val) { _north = val; }
		double East() const { return _east; }
		void East(double val) { _east = val; }
		double South() const { return _south; }
		void South(double val) { _south = val; }
		double West() const { return _west; }
		void West(double val) { _west = val; }

		static ExtentRectangle& fromDegree(double west, double south, double east, double north, ExtentRectangle& result);

		//static ExtentRectangle& fromCartographicArray(std::vector<double>& cartographics, ExtentRectangle& result);

	private:
		double _west, _south, _east, _north;	
	};

}